#include "myshell.h"

#define SIZE 1024
int main()
{
  //Debug();
  char str_buffer[SIZE];
  while(1)
  {
    //0.命令行参数表相关初始化
    GlobalInit();
    //1.输出命令行提示符
    PrintCommandPrompt();
    //2.获取用户输入命令，即获取命令字符串
    if(!GetCommandString(str_buffer,SIZE))
      continue;

    //3.检测重定向，并对命令行字符串修改
    CheckRedir(str_buffer);
    //4.对命令行字符串进行解析，生成命令行参数表
    ParseCommandString(str_buffer);
    //5.检测到内建命令，让shell自己执行
    if(BuiltInCommand())
    {
      continue;
    }
    //6.创建子进程，让子进程执行命令行命令
    ForkAndExec();
  }
  return 0;
}
